10 research outputs found

    A Demo of Application Lifecycle Management for IoT Collaborative Neighborhood in the Fog

    Get PDF
    International audienceRegarding latency, privacy, resiliency and network scarcity management, only distributed approaches such as proposed by Fog Computing architecture can efficiently address the fantastic growth of the Internet of Things (IoT). IoT applications could be deployed and run hierarchically at different levels in an infrastructure ranging from centralized datacenters to the connected things themselves. Consequently, software entities composing IoT applications could be executed in many different configurations. The heterogeneity of the equipment and devices of the target infrastructure opens opportunities in the placement of the software entities, taking into account their requirements in terms of hardware, cyber-physical interactions and software dependencies. Once the most appropriate place has been found, software entities have to be deployed and run. Container-based virtualization has been considered to overpass the complexity of packaging, deploying and running software entities in a heterogeneous distributed infrastructure at the vicinity of the connected devices. This paper reports a practical experiment presented as a live demo that showcases a " Smart Bell in a Collaborative Neighborhood " IoT application in the Fog. Application Lifecycle Management (ALM) has been put in place based on Docker technologies to deploy and run micro-services in the context of Smart Homes operated by Orange

    A Demo of Application Lifecycle Management for IoT Collaborative Neighborhood in the Fog

    Get PDF
    International audienceRegarding latency, privacy, resiliency and network scarcity management, only distributed approaches such as proposed by Fog Computing architecture can efficiently address the fantastic growth of the Internet of Things (IoT). IoT applications could be deployed and run hierarchically at different levels in an infrastructure ranging from centralized datacenters to the connected things themselves. Consequently, software entities composing IoT applications could be executed in many different configurations. The heterogeneity of the equipment and devices of the target infrastructure opens opportunities in the placement of the software entities, taking into account their requirements in terms of hardware, cyber-physical interactions and software dependencies. Once the most appropriate place has been found, software entities have to be deployed and run. Container-based virtualization has been considered to overpass the complexity of packaging, deploying and running software entities in a heterogeneous distributed infrastructure at the vicinity of the connected devices. This paper reports a practical experiment presented as a live demo that showcases a " Smart Bell in a Collaborative Neighborhood " IoT application in the Fog. Application Lifecycle Management (ALM) has been put in place based on Docker technologies to deploy and run micro-services in the context of Smart Homes operated by Orange

    Resilience of Stateful IoT Applications in a Dynamic Fog Environment

    Get PDF
    International audienceFog computing provides computing, storage and communication resources at the edge of the network, near the physical world. Subsequently , end devices nearing the physical world can have interesting properties such as short delays, responsiveness, optimized communications and privacy. However, these end devices have low stability and are prone to failures. There is consequently a need for failure management protocols for IoT applications in the Fog. The design of such solutions is complex due to the specificities of the environment, i.e., (i) dynamic infrastructure where entities join and leave without synchronization, (ii) high heterogeneity in terms of functions, communication models, network, processing and storage capabilities, and, (iii) cyber-physical interactions which introduce non-deterministic and physical world's space and time dependent events. This paper presents a fault tolerance approach taking into account these three characteristics of the Fog-IoT environment. Fault tolerance is achieved by saving the state of the application in an uncoordinated way. When a failure is detected, notifications are propagated to limit the impact of failures and dynamically reconfig-ure the application. Data stored during the state saving process are used for recovery, taking into account consistency with respect to the physical world. The approach was validated through practical experiments on a smart home platform

    Model and mechanisms to support the elasticity of distributed applications in the cloud

    No full text
    Le Cloud Computing permet une optimisation des coûts de déploiement et de maintenance des applications. Grâce au cloud, celles-ci peuvent être déployées et reconfigurées en l'espace de quelques minutes. La nécessité pour une application d'être en permanence à la juste taille afin que celle-ci maintienne continuellement une qualité de service suffisante sans pour autant utiliser trop de ressources, requiert de mettre en place l'élasticité des applications dans le cloud. Cependant, l'état de l'art montre que les solutions actuelles de gestion de l'élasticité sont restreintes à des applications multi-tiers tout en limitant fortement les scénarios possibles. Le cloud est effectivement un paradigme jeune et les différents acteurs du marché ont rapidement cherché à offrir l'élasticité. Si cette élasticité présente l'avantage indéniable d'apporter une mise place rapide et simple de l'élasticité, celle-ci n'obéit pas aux besoins de nombreux utilisateurs.Afin de repousser les limites actuelles de l'élasticité, les travaux présentés dans ce manuscrit proposent un outil de spécification de l'élasticité nommé Vulcan. A la fois simple et complet, Vulcan montre qu'il n'existe pas de corrélation entre la complétude de la solution et la complexité de son utilisation. Basé sur une approche autonomique, Vulcan apporte les contributions suivantes : - un modèle d'applications élastiques : celui-ci permet de décrire selon un mode dit "par intention", la façon dont l'application doit évoluer au cours des reconfigurations induites par l'élasticité. Le formalisme de ce modèle est à la base de la simplicité recherchée quant à l'utilisation de la solution.- un algorithme de planification : cet algorithme permet la résolution des différents paramètres lors de l'élasticité tout en offrant une compréhension simple à l'utilisateur de Vulcan.- un prototype qui met en oeuvre l'ensemble des concepts mis en avant dans ce document.Reposant sur des principes à la fois novateurs mais également issus de solutions éprouvées, des expérimentations ont démontré tant les capacités d'intégration de Vulcan vis-à-vis de l'existant, que la viabilité des concepts proposés ou le potentiel de l'approche. Il en ressort une solution générique, sans restriction quant aux applications gérées et qui repousse les limites actuelles en matière d'élasticité.Cloud computing permits cost optimization of both deployment and maintenance applications. Thanks to the cloud, applications can be deployed and reconfigured in a few minutes. Each application can thus be continuously maintained at a fair size, so that it can continuously maintain a sufficient quality of service without using too many resources. This adaptation is achieved thanks to the feature named « elasticity ». However, the state of the art shows that current solutions for the management of elasticity are restricted to multi-tier applications and do not manage all possible scenarios. The cloud is actually a young paradigm and the various market providers manage to offer elasticity. If the provided elasticity has the undeniable advantage of being a fast and easy mean to manage basic cases, it does not address the needs of many users.To tackle the current limits of elasticity, the work presented in this manuscript propose a tool for the specification of elasticity that is named Vulcan. Besides being simple and complete, Vulcan shows that there is no correlation between the completeness of a solution for the management of elasticity and the complexity of its use. Based on an autonomous approach, Vulcan brings the following contributions :- a model for elastic applications : it is used to describe how an application should evolve over the reconfigurations induced during elasticity. This description is done at a high level said « by intension » thanks to an innovative formalism. The proposed formalism is at the basis of the Vulcan simplicity of use.- a scheduling algorithm : this algorithm resolves various parameters during elasticity while providing to the user of Vulcan an easy comprehension. - a prototype that implements all of the concepts described in this manuscript.Making use of both innovative concepts and principles from proven solutions, Vulcan has shown its capabilities to push the current limits of elasticity

    Planification pour la gestion autonomique de l'élasticité d'applications dans le cloud

    No full text
    Cloud computing permits cost optimization of both deployment and maintenance applications. Thanks to the cloud, applications can be deployed and reconfigured in a few minutes. Each application can thus be continuously maintained at a fair size, so that it can continuously maintain a sufficient quality of service without using too many resources. This adaptation is achieved thanks to the feature named « elasticity ». However, the state of the art shows that current solutions for the management of elasticity are restricted to multi-tier applications and do not manage all possible scenarios. The cloud is actually a young paradigm and the various market providers manage to offer elasticity. If the provided elasticity has the undeniable advantage of being a fast and easy mean to manage basic cases, it does not address the needs of many users.To tackle the current limits of elasticity, the work presented in this manuscript propose a tool for the specification of elasticity that is named Vulcan. Besides being simple and complete, Vulcan shows that there is no correlation between the completeness of a solution for the management of elasticity and the complexity of its use. Based on an autonomous approach, Vulcan brings the following contributions :-a model for elastic applications : it is used to describe how an application should evolve over the reconfigurations induced during elasticity. This description is done at a high level said « by intension » thanks to an innovative formalism. The proposed formalism is at the basis of the Vulcan simplicity of use.-a scheduling algorithm : this algorithm resolves various parameters during elasticity while providing to the user of Vulcan an easy comprehension. -a prototype that implements all of the concepts described in this manuscript.Making use of both innovative concepts and principles from proven solutions, Vulcan has shown its capabilities to push the current limits of elasticity.Le Cloud Computing permet une optimisation des coûts de déploiement et de maintenance des applications. Grâce au cloud, celles-ci peuvent être déployées et reconfigurées en l'espace de quelques minutes. La nécessité pour une application d'être en permanence à la juste taille afin que celle-ci maintienne continuellement une qualité de service suffisante sans pour autant utiliser trop de ressources, requiert de mettre en place l'élasticité des applications dans le cloud. Cependant, l'état de l'art montre que les solutions actuelles de gestion de l'élasticité sont restreintes à des applications multi-tiers tout en limitant fortement les scénarios possibles. Le cloud est effectivement un paradigme jeune et les différents acteurs du marché ont rapidement cherché à offrir l'élasticité. Si cette élasticité présente l'avantage indéniable d'apporter une mise place rapide et simple de l'élasticité, celle-ci n'obéit pas aux besoins de nombreux utilisateurs.Afin de repousser les limites actuelles de l'élasticité, les travaux présentés dans ce manuscrit proposent un outil de spécification de l'élasticité nommé Vulcan. A la fois simple et complet, Vulcan montre qu'il n'existe pas de corrélation entre la complétude de la solution et la complexité de son utilisation. Basé sur une approche autonomique, Vulcan apporte les contributions suivantes : -un modèle d'applications élastiques : celui-ci permet de décrire selon un mode dit "par intention", la façon dont l'application doit évoluer au cours des reconfigurations induites par l'élasticité. Le formalisme de ce modèle est à la base de la simplicité recherchée quant à l'utilisation de la solution.-un algorithme de planification : cet algorithme permet la résolution des différents paramètres lors de l'élasticité tout en offrant une compréhension simple à l'utilisateur de Vulcan.-un prototype qui met en oeuvre l'ensemble des concepts mis en avant dans ce document.Reposant sur des principes à la fois novateurs mais également issus de solutions éprouvées, des expérimentations ont démontré tant les capacités d'intégration de Vulcan vis-à-vis de l'existant, que la viabilité des concepts proposés ou le potentiel de l'approche. Il en ressort une solution générique, sans restriction quant aux applications gérées et qui repousse les limites actuelles en matière d'élasticité

    A Demo of Application Lifecycle Management for IoT Collaborative Neighborhood in the Fog

    No full text
    International audienceRegarding latency, privacy, resiliency and network scarcity management, only distributed approaches such as proposed by Fog Computing architecture can efficiently address the fantastic growth of the Internet of Things (IoT). IoT applications could be deployed and run hierarchically at different levels in an infrastructure ranging from centralized datacenters to the connected things themselves. Consequently, software entities composing IoT applications could be executed in many different configurations. The heterogeneity of the equipment and devices of the target infrastructure opens opportunities in the placement of the software entities, taking into account their requirements in terms of hardware, cyber-physical interactions and software dependencies. Once the most appropriate place has been found, software entities have to be deployed and run. Container-based virtualization has been considered to overpass the complexity of packaging, deploying and running software entities in a heterogeneous distributed infrastructure at the vicinity of the connected devices. This paper reports a practical experiment presented as a live demo that showcases a " Smart Bell in a Collaborative Neighborhood " IoT application in the Fog. Application Lifecycle Management (ALM) has been put in place based on Docker technologies to deploy and run micro-services in the context of Smart Homes operated by Orange

    Architectural Model and Planification Algorithm for the Self-Management of Elastic Cloud Applications

    No full text
    International audience—This paper introduces a generic approach for managing automatically applications elasticity. The proposed solution addresses a noticeably wider scope of use-cases and does not depend on the underlying execution environment. It consists of: (i) a model and a formalism used for specifying valid applicative architectures (or elasticity scenarios) according to the resources allocated to the application. The originality of this first contribution lies in the association of a component model with a set oriented query language; (ii) a defeasible reasoning-based planning algorithm that computes the target applicative architecture from the model and elasticity requests; (iii) a first qualitative and quantitative evaluation that highlights the relevance and the viability of the proposed approach

    Combining hardware nodes and software components ordering-based heuristics for optimizing the placement of distributed IoT applications in the fog

    Get PDF
    International audienceAs fog computing brings compute and storage resources to the edge of the network, there is an increasing need for automated placement (i.e., selection of hosting devices) to deploy distributed applications. Such a placement must conform to applications' resource requirements in a heterogeneous fog infrastructure. The placement decision-making is further complicated by Internet of Things (IoT) applications that are tied to geographical locations of physical objects/things. This paper presents a model, an objective function, and a mechanism to address the problem of placing distributed IoT applications in the fog. Based on a backtrack search algorithm and accompanied heuristics, the proposed mechanism is able to deal with large scale problems, and to efficiently make placement decisions that fit the objective-to lower placed applications' response time. The proposed approach is validated through comparative simulations of different combinations of the algorithms and heuristics on varying sizes of infrastructures and applications

    F 3 ARIoT: A Framework for Autonomic Resilience of IoT Applications in the Fog

    Get PDF
    International audienceFog Computing is especially appealing to the Internet of Things (IoT) because it provides computing, storage, and communication resources at the edge of the network, near the physical world (PW). Thus, IoT located in the PW can have interesting properties such as low latencies, real-time operations , and data privacy. The Fog, however, is unstable because it is constituted of billions of devices in a dynamic environment. Moreover, the Fog is cyber-physical and devices are thus subjected to external PW conditions which increase the occurrence of failures. When failures occur in such an environment, the resulting consequences on the PW can be hazardous and costly. This paper presents F3ARIoT, a framework for autonomic resilience of IoT applications in the Fog. This framework recovers from failures as well as maintains consistency and safety with respect to the PW during the recovery procedure. F3ARIoT was implemented and evaluated on a smart home application. A performance evaluation showed that it has a negligible overhead and recovers from failures in a very short delay with respect to end-users

    Combining Heuristics to Optimize and Scale the Placement of IoT Applications in the Fog

    Get PDF
    International audienceAs fog computing brings processing and storage resources to the edge of the network, there is an increasing need of automated placement (i.e., host selection) to deploy distributed applications. Such a placement must conform to applications’ resource requirements in a heterogeneous fog infrastructure, and deal with the complexity brought by Internet of Things (IoT) applications tied to sensors and actuators. This paper presents four heuristics to address the problem of placing distributed IoT applications in the fog. By combining proposed heuristics, our approach is able to deal with large scale problems, and to efficiently make placement decisions fitting the objective: minimizing placed applications’ average response time. The proposed approach is validated through comparative simulation of different heuristic combinations with varying sizes of infrastructures and applications
    corecore